import matplotlib.pyplot as plt
from matplotlib.dates import MonthLocator, DateFormatter
import datetime

# 准备数据
dates = [
    datetime.datetime(2024, 1, 1),
    datetime.datetime(2024, 2, 1),
    datetime.datetime(2024, 3, 1),
    datetime.datetime(2024, 4, 1),
    datetime.datetime(2024, 5, 1),
    datetime.datetime(2024, 6, 1),
    datetime.datetime(2024, 7, 1),
]
values = [1, 2, 3, 4, 5, 8, 20]

# 创建图表并绘制数据
fig, ax = plt.subplots()
ax.plot(dates, values)

# 设置 x 轴的主要刻度定位器
ax.xaxis.set_major_locator(MonthLocator())

# 设置 x 轴的刻度格式为只显示月份，不显示前导零
ax.xaxis.set_major_formatter(DateFormatter("%y年%byu"))

# 设置中文用楷体
plt.rcParams["font.sans-serif"] = ["KaiTi"]
# plt.rcParams["axes.unicode_minus"] = False  # 解决负号'-'显示为方块的问题

# 显示图形
plt.show()
